const path = require('path')
const { CleanWebpackPlugin } = require('clean-webpack-plugin')
const HTMLWebpackPlugin = require('html-webpack-plugin')

const outputPath = path.join(__dirname, 'dist')

module.exports = {
  // development 开发模式
  // production 生产模式
  mode: 'development',
  entry: './src/index.js',
  output: {
    // 这个路径不能写相对路径，只能写绝对路径，不然会报错
    // __dirname：是 node 的全局变量，表示当前文件位置所在目录的绝对路径（不包含文件名）
    path: outputPath,
    filename: 'bundle.js',
  },
  plugins: [
    // 每次打包时，自动清空 dist 目录
    new CleanWebpackPlugin(),
    // 指定 html 模板文件，作为索引文件输出
    // new HTMLWebpackPlugin({ template: './public/index.html' }),
    // 用默认的 html 模板文件
    new HTMLWebpackPlugin(),
  ],
  // 这个不会输出打包文件，在内存中
  devServer: {
    // 静态目录
    static: outputPath,
    port: 9090,
    // open: true,
  },
}
